home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / scope / 101-125 / scopedisk122 / bassub / preferences.sub < prev    next >
Text File  |  1995-03-19  |  781b  |  34 lines

  1. REM Subroutines to manipulate preferences
  2. 'GetPreferences gets the Preferences block into memory
  3. 'SetPreferences changes Preferences in memory and saves altered block
  4. 'FreePreferences must be called last to free memory
  5. 'returns Address& of Preferences block
  6. 'Size& should be size in bytes of Preferences block
  7. '
  8. SUB GetPreferences(Address&,Size&)
  9.     Address& = AllocMem&(Size&+4,&HFFFF+1)
  10.     IF Address&<>0 THEN
  11.         POKEL Address&,Size&
  12.         Address&=Address&+4)
  13.         CALL GetPrefs(Address&,Size&)
  14.     ELSE
  15.         Address&=0
  16.     END IF
  17. END SUB
  18.  
  19. SUB SetPreferences(Address&)
  20.     IF Address&<>0 THEN
  21.         Size&=PEEKL(Address&-4)
  22.         CALL SetPrefs(Address&,Size&,-1)
  23.     END IF
  24. END SUB
  25.  
  26. SUB FreePreferences(Address&)
  27.     IF Address&<>0 THEN
  28.         Size&=PEEKL(Address&-4)
  29.         CALL FreeMem(Address&-4,Size&+4)
  30.     END IF
  31. END SUB
  32.  
  33.     
  34.